<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Flex 弹性盒子</title>
    <style>
      .container {
        height: 400px;
        background-color: beige;
      }
      .content1,
      .content2 {
        display: flex;
        flex-flow: row wrap; /** flex-flow属性是flex-direction属性和flex-wrap属性的简写形式，默认值为row nowrap */
        justify-content: flex-start;
        align-items: center; /** align-items属性定义项目在交叉轴上如何对齐。 **/
        align-content: flex-start; /** align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线，该属性不起作用。 **/
      }
      .content2 {
        height: 100px;
        background-color: aquamarine;
        align-items: flex-start;
      }
      .box1,
      .box2,
      .box3,
      .box4,
      .box5 {
        width: 80px;
        height: 30px;
        background-color: rgb(96, 170, 255);
        border: 1px solid rgb(255, 0, 0);
        margin: 5px;
      }

      .box2 {
        height: 20px;
        order: 1; /** order属性定义项目的排列顺序。数值越小，排列越靠前，默认为0。 **/
        flex-grow: 1; /** flex-grow属性定义项目的放大比例，默认为0，即如果存在剩余空间，也不放大。 **/
        /** 如果所有项目的flex-grow属性都为1，则它们将等分剩余空间（如果有的话）。如果一个项目的flex-grow属性为2，其他项目都为1，则前者占据的剩余空间将比其他项多一倍。 **/
      }
      .box3 {
        height: 35px;
        order: 5;
      }
      .box4 {
        height: 50px;
        order: -1;
        flex-shrink: 1; /** flex-shrink属性定义了项目的缩小比例，默认为1，即如果空间不足，该项目将缩小。 **/
      }
      .box5 {
        flex-basis: 100px;
        order: 0;
        flex: 1; /** flex属性是flex-grow, flex-shrink 和 flex-basis的简写，默认值为0 1 auto。后两个属性可选。 **/
        /** 属性有两个快捷值：auto (1 1 auto) 和 none (0 0 auto)。建议优先使用这个属性，而不是单独写三个分离的属性，因为浏览器会推算相关值。 **/
        /* flex-grow: 2; */
        align-self: flex-end; /** align-self属性允许单个项目有与其他项目不一样的对齐方式，可覆盖align-items属性。默认值为auto，表示继承父元素的align-items属性，如果没有父元素，则等同于stretch。 **/
      }
    </style>
  </head>
  <body>
    <div class="container">
      <div class="content1">
        <div class="box1">Box-1</div>
        <div class="box2">Box-2</div>
        <div class="box3">Box-3</div>
        <div class="box4">Box-4</div>
        <div class="box5">Box-5</div>
      </div>
      <br />
      <hr />
      <div class="content2">
        <div class="box1">Box-1</div>
        <div class="box2">Box-2</div>
        <div class="box3">Box-3</div>
        <div class="box4">Box-4</div>
        <div class="box5">Box-5</div>
      </div>
    </div>
    <p>
      <a href="https://blog.csdn.net/xiaonuo930110/article/details/139981663">Flex 弹性盒子总结</a>
    </p>
  </body>
</html>
